//
/***********************************************************
             File name:      main.c
             Author:         Bitat (陆叁柒)
             Email :         Bitat@qq.com
             Gitee :         https://gitee.com/bitat
             CSDN  :         https://blog.csdn.net/bitat 
             History:        2023/3/28
************************************************************/
    
#include <stdio.h>

//n&(n-1)求法
int count_one_bit(int n)
{
    int count = 0;
    while(n)
    {
        n = (n & (n-1));
        count++;
    }
    return count;
}

int main()
{
    int n = 0;
    scanf("%d",&n);
    int ret = count_one_bit(n);
    printf("%d\n",ret);

    return 0;
}



//&求法
//int count_one_bit(int n)
//{
//    int count = 0;
//    int i = 0;
//    for(i = 0; i < 32; i++)
//    {
//        if(((n>>i)&1) == 1)
//        {
//            count++;
//        }
//    }
//    return count;
//}
//
//int main()
//{
//    int n = 0;
//    scanf("%d",&n);
//    int ret = count_one_bit(n);
//    printf("%d\n",ret);
//
//    return 0;
//}


//unsigned求法
//int count_one_bit(unsigned int n)
//{
//    int count = 0;
//    while(n)
//    {
//        if(n%2 == 1)
//        {
//            count++;
//        }
//        n = n/2;
//    }
//    return count;
//}
//
//int main()
//{
//    int n = 0;
//    scanf("%d\n",&n);
//    int ret = count_one_bit(n);
//    printf("%d\n",ret);
//    return 0;
//}

